import {ClassType, ObjectType} from '../type';


/**
 * 依赖属性信息
 *
 * @author Zhang
 * @date 2019-5-27 15:55:15
 */
export interface DependencyLike {
  /** 属性名称 */
  propertyName: string;
  /**
   * 依赖Bean名称, 如果指定了该属性,则注入依赖对象时只会按照该属性对应的Bean实例注入
   * 若IOC容器中没有对应实例则抛出异常
   */
  beanName?: string;
  /**
   * 依赖Bean类型
   */
  beanType: ClassType<any>;
  /**
   * 依赖的Bean是否必须存在
   */
  required: boolean;
}
